package com.zsp.coupon.convert;


import com.zsp.coupon.constant.CouponCategory;

import javax.persistence.AttributeConverter;
import javax.persistence.Convert;

/**
 * 优惠卷分类枚举属性转换器
 * CouponCategory,String
 *x:是实体类的属性
 * y 是数据库里面的字段类型
 * */
@Convert
public class CouponCategoryConvert implements
        AttributeConverter<CouponCategory,String> {

    /**
     * 将实体属性x转化为y存储到数据库中，插入和更新数据库的时候执行
     */

    @Override
    public String convertToDatabaseColumn(CouponCategory couponCategory) {
        return couponCategory.getCode();
    }

    /**
     * 将数据库y转化为实体属性x，查询时进行的动作
     * @param
     * @return
     */
    @Override
    public CouponCategory convertToEntityAttribute(String code) {
        return CouponCategory.of(code);
    }
}
